/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package edu.wpi.first.wpilibj.templates.commands;

import edu.wpi.first.wpilibj.templates.subsystems.Cam;

/**
 *
 * @author anne
 */
public class MoveCamWithJoystick extends CommandBase {
    
    public MoveCamWithJoystick() {
        // Use requires() here to declare subsystem dependencies
        // moving cam needs exclusive use of camera
        requires(cam); // reserve cam subsystem
    }

    // Called just before this Command runs the first time
    protected void initialize() {
    }

    // Called repeatedly when this Command is scheduled to run
    protected void execute() {
        /**
         * Invoke camera control (cam) subsystem's method to move the 
         * camera with the joystick. The driver station operator interface
         * is invoked to get the current joystick values 
         */
        cam.moveCamWithJoystick(oi.getCamControlJoystick());
    }

    // Make this return true when this Command no longer needs to run execute()
    protected boolean isFinished() {
        return false; // we never finish
    }

    // Called once after isFinished returns true
    protected void end() {
    }

    // Called when another command which requires one or more of the same
    // subsystems is scheduled to run
    protected void interrupted() {
    }
}
